---
title: Stats Config
description: Configuration for Stats Filter.
location: https://istio.io/docs/reference/config/proxy_extensions/stats.html
layout: protoc-gen-docs
generator: protoc-gen-docs
weight: 20
number_of_entries: 5
---
<h2 id="MetricConfig">MetricConfig</h2>
<section>
<p>Metric instance configuration overrides.
The metric value and the metric type are optional and permit changing the
reported value for an existing metric.
The standard metrics are optimized and reported through a &ldquo;fast-path&rdquo;.
The customizations allow full configurability, at the cost of a &ldquo;slower&rdquo;
path.</p>

<table class="message-fields">
<thead>
<tr>
<th>Field</th>
<th>Type</th>
<th>Description</th>
<th>Required</th>
</tr>
</thead>
<tbody>
<tr id="MetricConfig-dimensions">
<td><code>dimensions</code></td>
<td><code>map&lt;string,&nbsp;string&gt;</code></td>
<td>
<p>(Optional) Collection of tag names and tag expressions to include in the
metric. Conflicts are resolved by the tag name by overriding previously
supplied values.</p>

</td>
<td>
No
</td>
</tr>
<tr id="MetricConfig-name">
<td><code>name</code></td>
<td><code>string</code></td>
<td>
<p>(Optional) Metric name to restrict the override to a metric. If not
specified, applies to all.</p>

</td>
<td>
No
</td>
</tr>
<tr id="MetricConfig-tags_to_remove">
<td><code>tags_to_remove</code></td>
<td><code>string[]</code></td>
<td>
<p>(Optional) A list of tags to remove.</p>

</td>
<td>
No
</td>
</tr>
<tr id="MetricConfig-match">
<td><code>match</code></td>
<td><code>string</code></td>
<td>
<p>NOT IMPLEMENTED. (Optional) Conditional enabling the override.</p>

</td>
<td>
No
</td>
</tr>
<tr id="MetricConfig-drop">
<td><code>drop</code></td>
<td><code>bool</code></td>
<td>
<p>(Optional) If this is set to true, the metric(s) selected by this
configuration will not be generated or reported.</p>

</td>
<td>
No
</td>
</tr>
</tbody>
</table>
</section>
<h2 id="MetricDefinition">MetricDefinition</h2>
<section>
<table class="message-fields">
<thead>
<tr>
<th>Field</th>
<th>Type</th>
<th>Description</th>
<th>Required</th>
</tr>
</thead>
<tbody>
<tr id="MetricDefinition-name">
<td><code>name</code></td>
<td><code>string</code></td>
<td>
<p>Metric name.</p>

</td>
<td>
No
</td>
</tr>
<tr id="MetricDefinition-value">
<td><code>value</code></td>
<td><code>string</code></td>
<td>
<p>Metric value expression.</p>

</td>
<td>
No
</td>
</tr>
<tr id="MetricDefinition-type">
<td><code>type</code></td>
<td><code><a href="#MetricType">MetricType</a></code></td>
<td>
<p>Metric type.</p>

</td>
<td>
No
</td>
</tr>
</tbody>
</table>
</section>
<h2 id="PluginConfig">PluginConfig</h2>
<section>
<table class="message-fields">
<thead>
<tr>
<th>Field</th>
<th>Type</th>
<th>Description</th>
<th>Required</th>
</tr>
</thead>
<tbody>
<tr id="PluginConfig-disable_host_header_fallback">
<td><code>disable_host_header_fallback</code></td>
<td><code>bool</code></td>
<td>
<p>Optional: Disable using host header as a fallback if destination service is
not available from the controlplane. Disable the fallback if the host
header originates outsides the mesh, like at ingress.</p>

</td>
<td>
No
</td>
</tr>
<tr id="PluginConfig-tcp_reporting_duration">
<td><code>tcp_reporting_duration</code></td>
<td><code><a href="https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration">Duration</a></code></td>
<td>
<p>Optional. Allows configuration of the time between calls out to for TCP
metrics reporting. The default duration is <code>5s</code>.</p>

</td>
<td>
No
</td>
</tr>
<tr id="PluginConfig-metrics">
<td><code>metrics</code></td>
<td><code><a href="#MetricConfig">MetricConfig[]</a></code></td>
<td>
<p>Metric overrides.</p>

</td>
<td>
No
</td>
</tr>
<tr id="PluginConfig-definitions">
<td><code>definitions</code></td>
<td><code><a href="#MetricDefinition">MetricDefinition[]</a></code></td>
<td>
<p>Metric definitions.</p>

</td>
<td>
No
</td>
</tr>
<tr id="PluginConfig-reporter">
<td><code>reporter</code></td>
<td><code><a href="#Reporter">Reporter</a></code></td>
<td>
<p>Proxy deployment type.</p>

</td>
<td>
No
</td>
</tr>
<tr id="PluginConfig-rotation_interval">
<td><code>rotation_interval</code></td>
<td><code><a href="https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration">Duration</a></code></td>
<td>
<p>Metric scope rotation interval. Set to 0 to disable the metric scope rotation.
Defaults to 0.</p>

</td>
<td>
No
</td>
</tr>
<tr id="PluginConfig-graceful_deletion_interval">
<td><code>graceful_deletion_interval</code></td>
<td><code><a href="https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration">Duration</a></code></td>
<td>
<p>Metric expiry graceful deletion interval. No-op if the metric rotation is disabled.
Defaults to 5m. Must be &gt;=1s.</p>

</td>
<td>
No
</td>
</tr>
</tbody>
</table>
</section>
<h2 id="MetricType">MetricType</h2>
<section>
<table class="enum-values">
<thead>
<tr>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr id="MetricType-COUNTER">
<td><code>COUNTER</code></td>
<td>
</td>
</tr>
<tr id="MetricType-GAUGE">
<td><code>GAUGE</code></td>
<td>
</td>
</tr>
<tr id="MetricType-HISTOGRAM">
<td><code>HISTOGRAM</code></td>
<td>
</td>
</tr>
</tbody>
</table>
</section>
<h2 id="Reporter">Reporter</h2>
<section>
<p>Specifies the proxy deployment type.</p>

<table class="enum-values">
<thead>
<tr>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr id="Reporter-UNSPECIFIED">
<td><code>UNSPECIFIED</code></td>
<td>
<p>Default value is inferred from the listener direction, as either client or
server sidecar.</p>

</td>
</tr>
<tr id="Reporter-SERVER_GATEWAY">
<td><code>SERVER_GATEWAY</code></td>
<td>
<p>Shared server gateway, e.g. &ldquo;waypoint&rdquo;.</p>

</td>
</tr>
</tbody>
</table>
</section>
